﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace IceDog.DNC.Program.WebApi.Repositories
{
    public interface IOperationRepository
    {
        Guid OperationId { get; }
    }
    /// <summary>
    /// 整个应用程序生命周期以内只创建一个实例 
    /// </summary>
    public interface IOperationRepositorySingleton : IOperationRepository { }
    /// <summary>
    ///  每一次GetService都会创建一个新的实例
    /// </summary>
    public interface IOperationRepositoryTransient : IOperationRepository { }
    /// <summary>
    /// 在同一个Scope内只初始化一个实例 ，可以理解为（ 每一个request级别只创建一个实例，同一个http request会在一个 scope内）
    /// </summary>
    public interface IOperationRepositoryScoped : IOperationRepository { }

}
